export function antiShake(fn, delay) {
    // 如果没传延迟时间，就默认200毫秒
    var delay = delay || 500
   
    // 记录上一次触发的定时器
    var timer = null
    return function () {
      const th = this
      var args = arguments
      // 如果定时器还没结束，再次触发了这个函数
      // 就清除这个定时器，重新计时
      if (timer) {
        clearTimeout(timer)
      }
      timer = setTimeout(function () {
        timer = null
        // 定时器结束，正常执行函数
        fn.apply(th, args)
      }, delay)
    }
  }